﻿using UnityEngine;
using System.Collections;
using System;

/// <summary>
/// 地图配置实体
/// </summary>
[Serializable]
public class MapConfigure {
    public static readonly String WGS_84= "WGS_84";

    /// <summary>
    /// 中心点
    /// </summary>
    private MapLocation centerPoint;
    /// <summary>
    /// 缩放比例
    /// </summary>
    private long scalingRatio;

    /// <summary>
    /// 坐标系
    /// </summary>
    private String coordinateSystem;

    /// <summary>
    /// 滑动系数
    /// </summary>
    private int Sliding;

    /// <summary>
    /// 最大缩放等级
    /// </summary>
    private int maxLevel;

    /// <summary>
    /// 最小缩放等级
    /// </summary>
    private int mixLevel;

    /// <summary>
    /// 可以滑动的左边距
    /// </summary>
    private MapLocation mapLeftBorder;

    /// <summary>
    /// 可以滑动右的边距
    /// </summary>
    private MapLocation mapRightBorder;

    /// <summary>
    /// 宽度
    /// </summary>
    private int width;

    /// <summary>
    /// 高度
    /// </summary>
    private int height;

    /// <summary>
    /// 摄像机距离背景距离
    /// </summary>
    private int cameraDistance;

    public MapConfigure()
    {
        this.width = Screen.width;
        this.height = Screen.height;
    }

    public MapLocation CenterPoint
    {
        get
        {
            return centerPoint;
        }

        set
        {
            centerPoint = value;
        }
    }

    public long ScalingRatio
    {
        get
        {
            return scalingRatio;
        }

        set
        {
            scalingRatio = value;
        }
    }

    public string CoordinateSystem
    {
        get
        {
            return coordinateSystem;
        }

        set
        {
            coordinateSystem = value;
        }
    }

    public int Sliding1
    {
        get
        {
            return Sliding;
        }

        set
        {
            Sliding = value;
        }
    }

    public int MaxLevel
    {
        get
        {
            return maxLevel;
        }

        set
        {
            maxLevel = value;
        }
    }

    public int MixLevel
    {
        get
        {
            return mixLevel;
        }

        set
        {
            mixLevel = value;
        }
    }

    public MapLocation MapLeftBorder
    {
        get
        {
            return mapLeftBorder;
        }

        set
        {
            mapLeftBorder = value;
        }
    }

    public MapLocation MapRightBorder
    {
        get
        {
            return mapRightBorder;
        }

        set
        {
            mapRightBorder = value;
        }
    }

    public int Width
    {
        get
        {
            return width;
        }

        set
        {
            width = value;
        }
    }

    public int Height
    {
        get
        {
            return height;
        }

        set
        {
            height = value;
        }
    }

    public int CameraDistance
    {
        get
        {
            return cameraDistance;
        }

        set
        {
            cameraDistance = value;
        }
    }
}
